#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include"gestion_personel.h"

void init_personel(file* fichePerso, personel clin_med[], int *n)
{int i; 
fichePerso=fopen("personel.txt","r") ; 
	if (fichePerso!=NULL) 
		{
			i=0; 
			do
			{fscanf(fichePerso,"%s %s %ld %s %s",clin_med[i].nom,clin_med[i].prenom,&(clin_med[i].Id),clin_med[i].type_sang,clin_med[i].profession);
			i++; 
			}while(fichePerso!=EOF); 
		(*n)=i ; 
		fclose (fichePerso); 
		}
	else printf ("le fichier personel.txt ne peut pas s ouvrir \n") ;
}



void ajouter_perso(file* fichePerso, personel clin_med[],int *n)
{int i ;
int b=0 ;  
i=0 ; 
	
printf ("donner les donnees du personel que vouz souhaitez ajouter A la clinique : Nom , Prenom , Id ,type_sang , profession \n") ; 
(*n)++;
scanf ("%s %s",clin_med[*n].nom,clin_med[*n].prenom) ;
	do { 
	printf("choisir un Id:\n")     
	scanf ("%ld",&(clin_med[*n]))
		while ((i<(*n))&&(b==0))
			}
			if (clin_med[i].Id==clin_med[*n])
			b=1; 
			}	
	   }while(b==0);
scanf("%s %s",clin_med[*n].type_sang,clin_med[*n].profession) ;
fichePerso=fopen("personel.txt","a");
	if (fichePerso!=NULL)
	{
	 fprintf(fichePerso,"%s %s %ld %s %s \n",clin_med[*n].nom,clin_med[*n].prenom,clin_med[*n].Id,clin_med[*n].type_sang,clin_med[*n].profession); 
	fclose(fichePerso); 
	}else printf ("le fichier personel.txt ne peut pas s ouvrir \n") ;
}




void supprimer_perso(FILE* fichePerso,personel clin_med[],int *n)
{int i ; 
long int ID; 
char NOM[20];
char PRENOM[20]; 
long int ID2;
char TYPE_sang[5]; 
char Profession[20]; 

printf ("donner l Id du personel que vous desirez supprimer \n") ; /*il faut encore implementer une condition sur l'Id */
scanf ("%ld",&ID) ; 	
	for (i=0;i<(*n);i++)
		{if (ID==clin_med[i].Id){
		clin_med[i]=clin_med[i+1];}
		}
	(*n)--; 
fichePerso=fopen("personel.txt","r") ;
	if (fichePerso!=NULL) 
	{
	while (fichePerso!=EOF) { 
		fscanf(fichePerso,"%s %s %d %s %s",NOM,PRENOM,&ID2,TYPE_SANG,PROFESSION) ; 
				if (ID==ID2)
				{fclose(fichePerso);
				 fichePerso=fopen("personel.txt","w+");
					if(fichePerso!=NULL)
						{i=0; 
						while (i<(*n)&&(ID!=ID2)&&(fichePerso!=EOF)
						{fprintf(fichePerso,"%s %s %ld %s %s \n",clin_med[i].nom,clin_med[i].prenom,&(clin_med[i].Id),clin_med[i].type_sang,clin_med[i].profession); 
						i++;
						}
			fclose(fichePerso); 
					
						}
					else printf ("le fichier personel.txt ne peut pas s ouvrir \n") ;
				}clin
			       } 
	}else printf ("personel.txt ne peut pas s ouvrir\n");
}





void recherche_pers_Id(personel clin_med[MAX])
{
long int ID; 
int i; 

printf ("donner l ID du personel que vous voulez chercher et afficher \n"); 
scanf ("%ld",&ID); 
	for (i=0;i<n;i++) {
		if (ID == clin_med[i].Id){
		printf("nom: %s \n",clin_med[i].nom);
		printf("prenom: %s \n",clin_med[i].prenom); 
		printf("*Id*: %ld \n",clin_med[i].Id) ;
		printf("type sang : %s \n",clin_med[i].type_sang);
		printf("profession : %s \n \n",clin_med[i].profession) ;
			  }
}

void recherche_pers_prof(personel clin_med[MAX])
{
char PROFESSION[20]; 
int i ; 

printf ("donner la profession (en miniscules) du personel que vous voulez chercher et afficher \n"); 
scanf ("%s",PROFESSION); 
	for (i=0;i<n;i++) {
		if (strcmp(PROFESSION,clin_med[i].nation)==0){
		printf("nom: %s \n",clin_med[i].nom);
		printf("prenom: %s \n",clin_med[i].prenom); 
		printf("Id: %ld \n",Id) ;
		printf("type sang : %s \n",clin_med[i].type_sang);
		printf("*profession* : %s \n \n",clin_med[i].profession) ;
			  }

}	
	
void recherche_pers_nom(personel clin_med[MAX])
{char NOM[20]; 	
int i ; 

printf ("donner le nom (en miniscules) du personel que vous voulez chercher et  afficher \n"); 
scanf ("%s",NATION); 
	for (i=0;i<n;i++) {
		if (strcmp(NOM,clin_med[i].nom)==0){
		printf("*nom*: %s \n",clin_med[i].nom);
		printf("prenom: %s \n",clin_med[i].prenom); 
		printf("Id: %ld \n",Id) ;
		printf("type sang : %s \n",clin_med[i].type_sang);
		printf("prfession: %s \n \n",clin_med[i].profession) ;
			  }

}	

	



		





